\documentclass[a4paper,13pt]{article}
\usepackage[utf8x]{inputenc}
\usepackage{graphicx}
\usepackage[utf8x]{inputenc}
\usepackage[french]{babel}

\usepackage{color}
\usepackage{hyperref}
\setlength{\oddsidemargin}{0in}
\setlength{\textwidth}{6.truein}
\setlength{\topmargin}{-0,1truein}
\setlength{\textheight}{9.3truein}
%opening
\title{}
\author{}

\begin{titlepage}



\end{titlepage}

\begin{document}
\title{\bf RAPPORT DU PROJET \\
 Études et expérimentation de la classification \\
 des scènes naturelles}
\author{Rédigé par:\\
Tran Thi Nhu Hoa, Khong Minh Thanh\vspace{1cm}\\
Sous la supervision de :\\
M. Ho Tuong Vinh}         
%\date{ Décembre, 2013}    % type date between braces

\maketitle

\vspace{15cm}
\tableofcontents
\vspace{20cm}

\section{Introduction}
Dans le cadre de ce TP, nous avons mis en place un programme de classification 
des images des scènes naturelles en utilisant un modèle de sac de mots. L'idée principale de ce projet est la construction d'un histogramme des caractéristiques des images d'apprentissage. 
et de correspondant à l'histogramme pour une image de la requête et de comparer combien de caractéristiques similaires entre les deux. Pour faire cela, nous avons besoin de extraire des caractéristiques des images d'apprentissage et regroupez-les dans le nombre particulier de bacs.

\section{Conception du programme}


\subsection{Base de données utilisées}
Les données réelles: (13 Natural Scene Categories)

Partage de données:
Apprentissage : 100 premières images par catégorie
Test : le reste des images
Pour faire des évaluations, nous avons besoin de savoir les types des images. 
A partir des types des images, nous pouvons trouver quelles sont les types d'images qui peut faire des confusion entre eux. Il y a des façons pour classifier, dans notre programme, nous 
distinguons trois types principaux par rapport à leur contenu.
\begin{itemize}
\item 'Indoor': les images en capturant des scènes de la maison comme des images dans les répertoires: 'bedroom', ' kitchen', 'livingroom'. 
\item 'Outdoor': les images en capturant des scènes en dehors de la maison comme des images dans les 
répertoires: 'CALsuburb','MIThighway', 'MITtallbuilding',....
\item 'Others': les images en capturant des scènes mais ne correspondent aux deux types au-dessus comme des images dans le répertoir 'industrial' (dans la base de données avec 15 catégories).
\end{itemize}
\begin{figure}[h!]
 \centering
 \includegraphics[width=14cm]{imgs/scenes.png}
 % MVC.png: 890x503 pixel, 72dpi, 31.40x17.74 cm, bb=0 0 890 503
 \caption{Des scènes à partir de chaque catégorie}
\end{figure}




\subsection{État de l'art}
\subsubsection{ La méthode en se basant sur 'Le sac de mots'}
De nos jours, la classification des images (des scènes naturelles) en catégorie sémantique 
est un problème important et difficile. De nombreuses approches différentes concernant 
la classification de la scène ont été proposées au cours des dernières années. Anna Bosch, Xavier Munoz, Robert Marti $[1]$ ont résumé de meilleurs méthodes pour organiser et classifier des images par leur contenus.

  Afin de modéliser des images et d'extraire des caractéristiques, ces auteurs résument deux méthodes
  principaux qu'on utilise souvent: "Global" la scène est décrite par des caractéristiques de bas niveau
à partir de l'ensemble de l'image, "Sub-blocks" l'image est d'abord divisé en plusieurs
blocs, puis caractéristiques sont extraites de chacune de ces blocs.
\begin{figure}[h!]
 \centering
 \includegraphics[width=10cm]{imgs/diviseImg.png}
 % MVC.png: 890x503 pixel, 72dpi, 31.40x17.74 cm, bb=0 0 890 503
 \caption{Approches de la classification de scène. De bas niveau ou la modélisation sémantique, est la propriété principale de distinguer les stratégies de base pour classification $[1]$.}
\end{figure}

Après avoir modélisé et extrait des caractéristiques, on a besoin une présentation intermédiaire pour le niveau sémantique. De plus, on a besoin un schéma liant le bas niveau caractéristique et le concept de haut niveau. Une technique qu'on applique en analysant le statistique de texte est implémenté dans les images aussi, c'est le sac à mot (Bag-of-words)$[1][2][3]$. Les modèles sont appliqués à des images par
en utilisant un analogue visuelle d'un mot, formé par le vecteur de quantification des caractéristiques visuelles (couleur, texture, etc) comme descripteurs dans les régions d'une image.
\begin{figure}[h!]
 \centering
 \includegraphics[width=8cm]{imgs/4etapes.png}
 % MVC.png: 890x503 pixel, 72dpi, 31.40x17.74 cm, bb=0 0 890 503
 \caption{Quatre étapes pour calculer le sac de mots. (i) Détection des régions, (ii) extraire des caractéristiques, (iii) obtenir le vocabulaire visuel de vecteurs de la quantification vectorielle de caractéristiques, (iv) calculer des histogrammes de sac-de-mots
 pour les images obtenues selon le vocabulaire.$[1]$ }
\end{figure}

Dans la partie d'évaluation, ces auteurs parlent de quatre stratégies différents pour implémenter avec la base d'apprentissage et la base de test pour classification $[1]$. 
\begin{itemize}
\item LLI: L'algorithme calcule caractéristiques globales pour
chaque image d'apprentissage, chaque image est représentée
par un vecteur de 180 dimension. Une image de test est classée
à l'aide de la méthode de regroupement K-NN (avec K = 10).
\item LLB: L'algorithme extrait les caractéristiques de vecteur pour
chaque bloc dans l'image d'apprentissage, ce stratégie proposée par Szummer et Picard.
Nous avons divisé l'image en 2 x 2 et 4 x 4 blocs. Chaque bloc de l'image de test 
est classifiée en utilisant K-NN (avec K = 10) 
\item IS: classer chaque morceau d'image (10 x 10) fournissant
à partir d'un certain objet, et en utilisant la distribution de l'objet
la classification de l'image est effectuée.
\item BOW: A 5 x 5 square au carré autour d'un pixel
est utilisée pour calculer le vecteur de caractéristique. nous les quantifions
en utilisant l'algorithme k-means pour former le vocabulaire visuel.
  Ensuite, nous classons chaque image en utilisant Plsa.
Nous avons utilisé K = 700 pour l'algorithme k-means (vecteur
quantification) et Z = 25 lors de l'exécution Plsa.
\end{itemize}

\begin{figure}[h!]
 \centering
 \includegraphics[width=8cm]{imgs/resultat1.png}
 % MVC.png: 890x503 pixel, 72dpi, 31.40x17.74 cm, bb=0 0 890 503
 \caption{Résultats de quatre méthodologies avec la même base de donnée de Vogel and Schiele $[1]$.}
\end{figure}

En se basant sur la méthode de construire un sac à mot, Svetlana Lazebnik, Cordelia Schmid et Jean Ponce
ont proposé une évaluation de cet méthode en combinant cette méthode avec un autre technique de faire des correspondants, c'est 'Spatial Pyramid Matching'. En calculant les résultats de la méthode du sac à mots avec la façon d'extraction d'un niveau et la méthode 'Spatial Pyramid Matching' en trois niveaus, ces auteurs ont trouvé que les résultats sont évalués. Le taux de bonne reconnaissance obtenu est très haut 81.4 pourcentage. 
\begin{figure}[h!]
 \centering
 \includegraphics[width=8cm]{imgs/levelPyramid.png}
 % MVC.png: 890x503 pixel, 72dpi, 31.40x17.74 cm, bb=0 0 890 503
 \caption{Exemple de construction d'une pyramide à trois niveaux. L'image a trois types d'entités (cercles, diamants, et croix). Au sommet, on subdivise l'image à trois niveaux différents de résolution. Ensuite, pour chaque niveau de résolution et chaque canal, nous comptons les caractéristiques. Enfin, nous avons
 le poids de chaque histogramme spatiale $[2]$.}
 \end{figure}
 
 Jianxin Wu, and James M. Rehg $[4]$ combinent la méthode 'sac de mots' avec des autres techniques d'extraire des caractéristiques. Particulièrement, la méthode d'extraire les vecteurs 'eigenface' (ACP: Analyse en composante principale) et des contours Sobel dans les images. Ensuite, ils utilisent la méthode de classification SVM (Support Vector Machine) pour classifier des images. Ils ont obtenu de bon résultat: taux de bonne reconnaissance est 85 pourcentage avec la base de donnée constituant 15 répertoires d'images.  
 
 \subsubsection{La méthode de texture}
L'idée d'utilisation des textures est à partir du cours 'Texture' de Alain Boucher $[5]$. 
En calculant plusieurs paramètres d’une texture et la matrice de co-occurrences à partir de l’image ou de son
histogramme, nous allons obtenir des caractéristiques d'un image. 

Calculer les matrices de co-occurences.
L’idée de cette méthode est d’identifier les répétitions de niveaux de gris selon une
distance et une direction. La taille de matrice de co-occurences dépend de le nombre de niveau de gris d'un image. Si un image ont le niveau de gris N, la taille de cet matrice est N x N. De plus, nous pouvons calculer 
plusieurs matrices d'après des distances (1, 2, 3, 4, ...) et des directions (0, 45, 90, 135) différents. 
Pour chaque matrice, on peut calculer quatorze paramètres
caractérisant la texture, dont les plus importants:\\
\begin{figure}[h!]
\centering
 \includegraphics[width=10cm]{imgs/texture.png}
 % MVC.png: 890x503 pixel, 72dpi, 31.40x17.74 cm, bb=0 0 890 503
\end{figure}

Nous pouvons diviser un image par des sub-blocs et pour chaque bloc, nous allons calculer 8 matrices de co-occurences et 6 caractéristiques de ces matrices. Après avoir calculé, nous allons obtenir un vecteur de caractéristique représenté cet image. Enfin, nous pouvons appliquer une méthode de classification pour ces données extraits.

\section{Implémentation}
Dans ce TP, nous avons implémenté 2 méthodes. Un méthode est se basé sur l'approche de texture, et un 
autre se basé sur l'approche de sac de mots comme nous avons présenté dans la partie d'état de l'art. 
Maintenant, nous allons appliquer ces méthodes dans la partie d'implémentation pour trouver l'efficacité de 
chaque méthode. 


\textit{Méthode utilisée: le sac de mots (Bag of word en anglais)}\\
Les étapes à faire: \\
\begin{itemize}
\item Collecter des caractéristiques pour construire le vocabulaire visuel. 
\item Utiliser la méthode Kmeans pour regroupement des caractéristiques en un vocabulaire visuel. 
\item A partir de chaque image d'apprentissage, construire un histogramme des mots (la fréquence), 
attribuer chaque caractéristiques trouvé dans cet image d'apprentissage dans un mot le plus proche dans le vocabulaire. 
\item Transférer ces histogrammes dans un SVM pour apprendre. 
\item Construire des histogrammes pour des images de teste et utiliser le résultat d'apprendre dans les étapes précédents pour faire des prédictions.
\end{itemize}
Dans notre programme, nous avons utilisé SIFT (Fonction scale-invariant de transformation) publié par D.Lowe en 1999 pour extraire des caractéristiques locales d'images. Les points d'intéret SIFT et ses descripteurs qui représentent une collection de vecteurs de caractéristiques d'un image. D'abord, nous avons extraire les descripteurs SIFT de toutes les images d'apprentissage et regrouper les caractéristiques denses SIFT dans un vocabulaire de «mots visuels" à l'aide de kmeans. 
Algorithme regrouper des descripteurs SIFT pour un vocabulaire de "mots visuels": \\

Entrée:\\
img [] (tableau d'image d'entrée)\\
vocab size (taille de vocabulaires) \\
Sortie:\\
vocab [] (128 x vocabulaire taille de mots visuels en cluster)\\
Fonctions:\\
extraireSIFT (img, la taille, l'étape) - calculer des descripteurs SIFT d'un image \\
kmeans (matrice, k) - appliquer kmeans algorithme à matrice de regroupement  \\
Algorithme:  \\
matrice [] ← NULL  \\
pour i de 1 à taille (img []) par 1  \\
    sift feature ← dsift (img [i], la taille, l'étape)  \\
    matrice [] ← concatnate (matrice [], sift feature)  \\
    vocabulaire ← kmeans (matrice, vocab size)  \\


\textit{Méthode utilisée: Approche de texture.} \\
Nous avons divisé un image par 6 sub-blocs avec les mêmes tailles et calculé 8 matrices de co-occurences et 6 caractéristiques de chaque matrice. Nous allons 6 x 8 x 6 = 288 caractéristiques pour chaque image. Ensuite, nous avons stocké ces valeurs sour la forme d'un fichier .arff et enfin utilisé la méthode de classification SOM (sequential minimal optimization) qui est installé dans WEKA pour la partie de classification.
\section{Expérimentation}
\subsection{Méthode d'évaluation}
Nous appliquons la méthode d'évaluation k-fold cross validation afin d'assurer que notre 
programme va bien prédire les nouvelles données. Nous choisissons 3 pour la 
valeur de k. Autrement, nous divisons les données en trois ensembles et chaque 
expérimentation nous prenons un ensemble pour la validation et deux autres ensembles pour 
l'apprentissage. La figure ci-dessous l'explique.
\begin{figure}[ht]
	\begin{center}
	  \includegraphics[width=8cm]{3fold.jpg}
	\end{center}
	 \caption{Méthode 3-fold cross validation utilisée}
	 \label{fig: 3fold validation}
\end{figure}

\subsection{Expérimentation 1}
\textbf{Dans cette sections nous voulons savoir quelle est la valeur optimale pour le nombre de mots dans le sac de mots. Nous allons expérimenter le nombre de mots avec les valeur: 250, 500, 750, 1000, 2000. Pour les valeur supérieur à 2000, nous ne pouvons pas examiner à cause de la calcule coûteuse.}
\begin{itemize}
\item Méthode utilisée: Le sac de mots avec des descripteurs SIFT.
\item Base de données: 13 catégories d'images.
\item Méthode de classification: SVM (Support Vector Machine)
\end{itemize}


%Méthode de classification: SVM (Support Vector Machine)\\
%Résultat obtenu: 61.8974, total vrai: 796, total prédite: 1286 \\

%L'espace de mémoire utilisé: 3.5 G RAM, processus core i5. \\
%Temps de calcul au total:
%real	0m27.167s
%user	0m26.808s
%sys	0m0.296s

\begin{table}[!ht]
  \begin{center}
	\begin{tabular}{|p{4cm}|p{2.5cm}|p{2.5cm}|}
	  \hline
	  Méthode & nombre de mots dans le sac &  Taux de reconnaissance (\%) \\  \hline
	  sac de mots + SVM & 250 & 59.47\\
	  sac de mots + SVM & 500 & 59.65\\
	  sac de mots + SVM & 750 & 61.31\\
	  sac de mots + SVM & 1000 & 61.28\\
	  sac de mots + SVM & 2000 & 61.49\\
	  \hline
	\end{tabular}
  \end{center}
  \caption{3-fold cross validation avec le nombre de mot de sac est entre: 250, 500, 750, 1000, 2000}
\end{table}

Au vu du tableaux, nous voyons que quand le nombre de mots dans le sac augmente, le taux de prédire augmente aussi. Mais il n'augmente pas beaucoup, seulement environs 2\%. Par contre, comme le nombre de mots dans le sac augmente, on a besoin plus de calcule: avec le nombre de mots = 2000 le temps est 2 heures et demie; le nombre de mots = 250 le temps est environs 30 minutes. Nous proposons de choisir le nombre de sacs de mots = 1000, ce nombre équilibre entre le temps de calcule et le taux de prédiction.

Afin de savoir quel sont les problèmes de reconnaissance, nous allons voir la matrice de confusion. Nous montre le résultat avec le nombre de mots = 1000, parce que avec les autres valeurs du nombre de mots, ils ont le même problème.

\begin{table}[h!]
    \begin{center}
    %\resizebox{\textwidth}{!}{%
        \begin{tabular}{|l|l|l|l|l|l|l|l|l|l|l|l|l|l|}
	       \hline
	       &0 &1 &2 &3 &4 &5 &6 &7 &8 &9 &10 &11 &12 \\ \hline
	      0& 24 & 4 & 6 & 15 & 0 & 0 & 2 & 1 & 3 & 9 & 3 & 2 & 3   \\ \hline
	      1& 0 & 72 & 0 & 1 & 0 & 2 & 0 & 0 & 3 & 2 & 0 & 0 & 0   \\ \hline
	      2& 6 & 7 & 24 & 8 & 0 & 0 & 1 & 10 & 0 & 0 & 2 & 2 & 10   \\ \hline
	      3& 23 & 6 & 16 & 39 & 1 & 1 & 0 & 2 & 0 & 0 & 1 & 3 & 5  \\ \hline
	      4& 0 & 2 & 0 & 0 & 75 & 2 & 9 & 0 & 11 & 17 & 1 & 2 & 1  \\ \hline
	      5& 0 & 0 & 0 & 0 & 0 & 101 & 0 & 0 & 3 & 4 & 1 & 0 & 0   \\ \hline
	      6& 1 & 7 & 0 & 0 & 5 & 0 & 50 & 1 & 2 & 5 & 8 & 8 & 0   \\ \hline
	      7& 1 & 1 & 3 & 2 & 0 & 0 & 2 & 71 & 0 & 1 & 11 & 9 & 1  \\ \hline
	      8& 0 & 1 & 0 & 0 & 10 & 9 & 0 & 0 & 94 & 11 & 0 & 0 & 0   \\ \hline
	      9& 0 & 4 & 0 & 0 & 29 & 12 & 2 & 0 & 19 & 68 & 1 & 1 & 0  \\ \hline
	      10& 0 & 2 & 0 & 2 & 0 & 1 & 0 & 3 & 6 & 1 & 75 & 8 & 0  \\ \hline
	      11& 0 & 3 & 2 & 3 & 3 & 0 & 4 & 5 & 1 & 5 & 10 & 82 & 0  \\ \hline
	      12& 2 & 1 & 7 & 11 & 0 & 0 & 0 & 8 & 1 & 0 & 2 & 0 & 40  \\
	       \hline
        \end{tabular}
    \end{center}
      	\caption{matrice de confusion: sac de mots + SVM, vocabulary = 1000, hessian threshold = 300 }
\end{table}

"bedroom",0;
"CALsuburb",1;
"kitchen",2;
"livingroom",3;
{"MITcoast",4};
{"MITforest",5};
{"MIThighway",6};
{"MITinsidecity",7};
{"MITmountain",8};
{"MITopencountry",9};
{"MITstreet",10};
{"MITtallbuilding",11};
{"PARoffice",12}

$\Longrightarrow$ Remarques: Les erreurs se situant dans la partie des scènes à l'intérieur d'une maison 'Indoor' sont plus ceux dans la partie des scènes à l'extérieur 'Outdoor'. Les répertoires d'images ont les plus des confusions dans les répertoires 'bedroom', ' kitchen', 'livingroom'.

\subsection{Expérimentation 2}
\textbf{Dans l'expérimentation précédente, on voit qu'il y a certain de classes qui confondent avec les autres. Ce problème peut être expliqué par le fait que ces classes ont beaucoup de SIFT keypoints communs. Si on arrive à éliminer ces keypoints, on pourrait augmenter le taux de prédiction. Donc, dans cette section, nous voulons examiner si le total nombre de keypoints de tous les images change, le taux de prédiction change comment?}

Afin de le savoir, nous allons changer la variable\textbf{ Hessian Threshold }entre: 100, 300, 500. On obtiendra le nombre total de keypoints de tous les images entres: 400000, 700000, et 1000000 keypoints. Nous fixons aussi le nombre de mots de sac = 1000.
\begin{itemize}
\item Méthode utilisée: Le sac de mots avec des descripteurs SIFT.
\item Base de données: 13 catégories d'images.
\item Méthode de classification: SVM (Support Vector Machine)
\end{itemize}

%Résultat obtenu: 62.5194, total vrai: 804, total prédite: 1286\\
%L'espace de mémoire utilisé: 3.7 G RAM, processus core i5. \\
%Temps de calcul au total:
%real	0m27.167s
%user	0m26.808s
%sys	0m0.296s

\begin{table}[!ht]
  \begin{center}
	\begin{tabular}{|p{4cm}|p{2.5cm}|p{2.5cm}|p{2.5cm}|}
	  \hline
	  Méthode & nombre de mots dans le sac & nombre total de keypoints & Taux de reconnaissance (\%) \\ \hline
	  sac de mots + SVM & 1000 & 400K & 60.55\\
	  sac de mots + SVM & 1000 & 700K & 61.28\\
	  sac de mots + SVM & 1000 & 1000K & 60.79\\
	  \hline
	\end{tabular}
  \end{center}
  \caption{3-fold cross validation avec le nombre de mot de sac égale 1000, le nombre total de keypoints est entre : 400K, 700K, 1000K}
\end{table}

Au vu du tableaux, le résultat est meilleur quand le nombre total de keypoint = 700K (Hessian threshold = 300), on constate que quand on diminue le nombre de keypoints ou l'augmente, le résultat n'améliorera pas. Cela peut expliquer que quand on diminue le nombre de total keypoints, on ne peut pas diminuer les dupliqués entre les classes. De plus, les SIFT keypoints pour certaines classes sont disparus, alors le taux de prédiction diminue. Le même problème si le nombre de keypoints est grand. Donc, pour diminuer les dupliqués entre les classe, nous devons utiliser une autre méthode, tels que: pour chaque paire de classe, nous cherchons les mêmes keypoints, ensuite les éliminer (mais il est coûteux). On laisse ce travail comme perspective.

\begin{table}[h!]
    \begin{center}
    %\resizebox{\textwidth}{!}{%
        \begin{tabular}{|l|l|l|l|l|l|l|l|l|l|l|l|l|l|}
	       \hline
	        &0 &1 &2 &3 &4 &5 &6 &7 &8 &9 &10 &11 &12 \\ \hline
	       0& 27 & 3 & 2 & 6 & 1 & 0 & 0 & 3 & 9 & 6 & 8 & 1 & 6   \\ \hline
	       1& 0 & 74 & 0 & 1 & 0 & 2 & 0 & 0 & 2 & 1 & 0 & 0 & 0   \\ \hline
	       2& 6 & 5 & 17 & 18 & 1 & 0 & 0 & 12 & 0 & 0 & 4 & 2 & 5   \\ \hline
	       3&  13 & 10 & 11 & 37 & 0 & 1 & 0 & 2 & 1 & 0 & 8 & 3 & 11   \\ \hline
	       4& 2 & 1 & 1 & 0 & 73 & 4 & 8 & 0 & 14 & 13 & 1 & 3 & 0  \\ \hline
	       5& 0 & 0 & 0 & 0 & 0 & 98 & 0 & 0 & 5 & 5 & 1 & 0 & 0  \\ \hline
	       6& 1 & 5 & 0 & 0 & 13 & 0 & 47 & 3 & 3 & 2 & 7 & 6 & 0  \\ \hline
	       7& 3 & 1 & 0 & 7 & 1 & 0 & 3 & 69 & 0 & 1 & 7 & 8 & 2  \\ \hline
	       8&  0 & 1 & 0 & 0 & 7 & 12 & 0 & 0 & 95 & 10 & 0 & 0 & 0  \\ \hline
	       9& 0 & 4 & 0 & 0 & 23 & 13 & 2 & 0 & 23 & 67 & 2 & 2 & 0  \\ \hline
	       10& 0 & 2 & 0 & 4 & 0 & 1 & 0 & 5 & 4 & 3 & 69 & 10 & 0  \\ \hline
	       11& 1 & 1 & 0 & 2 & 3 & 2 & 3 & 15 & 0 & 3 & 7 & 80 & 1  \\ \hline
	       12& 6 & 0 & 8 & 10 & 0 & 0 & 0 & 8 & 1 & 0 & 3 & 0 & 36  \\ \hline
        \end{tabular}
    \end{center}
      	\caption{matrice de confusion: sac de mots + SVM, vocabulary = 1000, hessian threshold = 100 }
\end{table}


%\begin{table}[h!]
%    \begin{center}
%    %\resizebox{\textwidth}{!}{%
%        \begin{tabular}{|l|l|l|l|l|l|l|l|l|l|l|l|l|l|}
%	       \hline
%	        &0 &1 &2 &3 &4 &5 &6 &7 &8 &9 &10 &11 &12 \\ \hline
%	       0& 17 & 3 & 5 & 18 & 2 & 0 & 0 & 1 & 5 & 6 & 8 & 2 & 5 \\ \hline
%	       1& 0 & 72 & 0 & 2 & 0 & 2 & 0 & 0 & 2 & 2 & 0 & 0 & 0  \\ \hline
%	       2& 7 & 5 & 21 & 16 & 0 & 0 & 1 & 7 & 0 & 0 & 4 & 3 & 6 \\ \hline
%	       3& 15 & 4 & 8 & 52 & 1 & 1 & 0 & 2 & 1 & 1 & 4 & 2 & 6 \\ \hline
%	       4& 1 & 1 & 0 & 0 & 78 & 4 & 8 & 0 & 10 & 15 & 1 & 2 & 0 \\ \hline
%	       5& 0 & 0 & 0 & 0 & 0 & 100 & 0 & 0 & 5 & 3 & 1 & 0 & 0  \\ \hline
%	       6& 2 & 7 & 0 & 0 & 12 & 0 & 44 & 1 & 5 & 3 & 7 & 6 & 0 \\ \hline
%	       7& 2 & 1 & 1 & 4 & 0 & 0 & 4 & 67 & 0 & 1 & 13 & 8 & 1 \\ \hline
%	       8& 0 & 1 & 0 & 0 & 9 & 10 & 0 & 0 & 96 & 9 & 0 & 0 & 0 \\ \hline
%	       9& 0 & 3 & 0 & 0 & 23 & 17 & 3 & 0 & 22 & 66 & 0 & 2 & 0  \\ \hline
%	       10& 0 & 2 & 1 & 3 & 0 & 2 & 1 & 7 & 4 & 2 & 68 & 8 & 0 \\ \hline
%	       11& 0 & 3 & 0 & 5 & 5 & 2 & 2 & 9 & 1 & 1 & 4 & 86 & 0  \\ \hline
%	       12& 4 & 3 & 7 & 12 & 0 & 0 & 0 & 7 & 1 & 0 & 4 & 0 & 34 \\ \hline
%        \end{tabular}
%    \end{center}
%      	\caption{matrice de confusion: sac de mots + SVM, vocabulary = 1000, hessian threshold = 500 }
%\end{table}

"bedroom",0;
"CALsuburb",1;
"kitchen",2;
"livingroom",3;
{"MITcoast",4};
{"MITforest",5};
{"MIThighway",6};
{"MITinsidecity",7};
{"MITmountain",8};
{"MITopencountry",9};
{"MITstreet",10};
{"MITtallbuilding",11};
{"PARoffice",12}

$\Longrightarrow$ Remarques: Les erreurs se situant dans la partie des scènes à l'intérieur d'une maison 'Indoor' sont plus ceux dans la partie des scènes à l'extérieur 'Outdoor'. Les répertoires d'images ont les plus des confusions dans les répertoires 'bedroom', ' kitchen', 'livingroom'.

$\Longrightarrow$ D'après plusieurs essais, il a relevé que plus la taille du vocabulaire donne de meilleurs résultats en général.

\subsection{Expérimentation 3}
\textbf{Dans cette section, nous voulons essayer une autre approche pour savoir si elle est meilleure avec les approches précédentes. Nous allons utiliser l'approche de texture pour faire la reconnaissance.}
\begin{itemize}
\item Méthode utilisée: Approche de texture. 
\item Base de données: 13 catégories d'images.
\item Méthode de classification: SOM (sequential minimal optimization)
\item Résultat obtenu: taux de bonne reconnaissance 55.9984.
\item L'espace de mémoire utilisé: 3.2 G RAM, processus core i5.
\item Temps de calcul au total: 5.5 min pour extraire des caractéristiques et 4.9 s pour la partie de classification.

\end{itemize}

\begin{figure}[h!]
\centering
 \includegraphics[width=10cm]{imgs/resultatSOM.png}
 % MVC.png: 890x503 pixel, 72dpi, 31.40x17.74 cm, bb=0 0 890 503
\end{figure}

\begin{figure}[h!]
\centering
 \includegraphics[width=12cm]{imgs/confusionmatrice.png}
 % MVC.png: 890x503 pixel, 72dpi, 31.40x17.74 cm, bb=0 0 890 503
\end{figure}
$\Longrightarrow$ Remarques: Les erreurs se situant dans la partie des scènes à l'intérieur d'une maison 'Indoor' sont plus ceux dans la partie des scènes à l'extérieur 'Outdoor'. Le temp d'exécution au total de cette méthode est moins que la méthode 'sac de mots' beaucoup plus.

\section{Conclusion}
Reconnaissance des scènes naturelles sont un problème difficile à bien résoudre. La méthode principale que nous utilisons souvent est l'approche 'sac de mots'. De plus, il existe des stratégies pour évaluer cette méthode. Dans ce TP, nous avons appliqué deux méthodes qui se basent sur l'approche 'sac de mots' et l'approche de texture et fait trois expérimentations sur ces méthodes. Après avoir expérimenté, nous avons trouvé que la méthode qui se base sur l'approche de texture a le temps d'exécution le plus courte que la méthode 'sac de mots'. Avec la méthode se base sur l'approche 'sac de mots', la taille du vocabulaire donne de meilleurs résultats en général mais le temps de calcul est trop long avec grand l'espace de mémoire utilisée.

\section*{Références}
[1]Anna Bosch, Xavier Munoz, Robert Marti. "A review: Which is the best way to organize/classify images by content?."

[2] Jun Yang, Yu-Gang Jiang. "Evaluating Bag-of-Visual-Words Representations in Scene Classification." 
%.

[3]Svetlana Lazebnik, Cordelia Schmid, et Jean Ponce. "Beyond Bags of Features: Spatial Pyramid Matching for Recognizing Natural Scene Categories."

[4] Jianxin Wu, James M. Rehg. "CENTRIST: A Visual Descriptor for Scene Categorization"

[5] Alain Boucher. Cours Vision par ordinateur: Texture 

\end{document}